//声明一个变量a,同时指定它的类型为number
let a: number;
//a的类型设置为了number，在以后的使用过程中，a的值只能是数字
a = 10;
// a = 'hello';     //此行代码会报错，因为变量a的类型是number，不能赋值字符串

let b: string;
b = 'hello';

//声明完变量直接进行赋值
let c: boolean = true;
let d = true;

// d = 123    //会报错，ts会自动进行类型检测

//JS中的函数不考虑参数的类型和个数的
function sum(a, b) {
    return a + b;
}

console.log(sum(1, 3));     //4
console.log(sum(1, '3'));   //'13'


function tsSum(a: number, b: number):number {
    return a + b;
}

//tsSum(1, '2');  //webstorm提示错误，但是仍然能用tsc进行编译

export {};